package com.jt.mapper;

import com.jt.pojo.DemoUser;
import org.apache.ibatis.annotations.Param;

import java.util.List;
import java.util.Map;

/* 说明：
 *      1.根据面向接口开发的思想需要定义一个Mapper接口
 *      2.在接口中可以写接口方法，谁用谁去实现
 *      3.Mybatis中的实现类以xml文件的形式存在
 */
public interface DemoUserMapper {
    // 1.查询所有的表数据
    List<DemoUser> findAll();

    List<DemoUser> findOne(int id);

    List<DemoUser> findName(String name);

    List<DemoUser> findSAM(Map<String, Object> map);

    List<DemoUser> findSA(DemoUser user);

    // 如果参数有多个，可以使用@Param将多个参数封装为map，利用#{key}获取数据
    //将String sex的数据封装为key为"sex"/"age"的数据
    List<DemoUser> findSA2(@Param("sex") String sex, @Param("age") Integer age);


    List<DemoUser> findOrder(String column);

    int insertUser(DemoUser demoUser);

    int updateUser(Map<String, Object> map);

    int deleteUser(Map<String, Object> map);


    List<DemoUser> findSA02(Map<String, Object> map);
}
